using System;

namespace Oracle.ManagedDataAccess.Client
{
	public sealed class OracleXmlQueryProperties : ICloneable
	{
		private int m_maxRows;

		private string m_rootTag;

		private string m_rowTag;

		private string m_xslt;

		private string m_xsltParams;

		public int MaxRows
		{
			get
			{
				return m_maxRows;
			}
			set
			{
				if (value < -1)
				{
					throw new ArgumentException();
				}
				m_maxRows = value;
			}
		}

		public string RootTag
		{
			get
			{
				return m_rootTag;
			}
			set
			{
				m_rootTag = value;
			}
		}

		public string RowTag
		{
			get
			{
				return m_rowTag;
			}
			set
			{
				m_rowTag = value;
			}
		}

		public string Xslt
		{
			get
			{
				return m_xslt;
			}
			set
			{
				m_xslt = value;
			}
		}

		public string XsltParams
		{
			get
			{
				return m_xsltParams;
			}
			set
			{
				m_xsltParams = value;
			}
		}

		public OracleXmlQueryProperties()
		{
			m_maxRows = -1;
			m_rootTag = "ROWSET";
			m_rowTag = "ROW";
		}

		public object Clone()
		{
			return new OracleXmlQueryProperties
			{
				m_maxRows = m_maxRows,
				m_rootTag = m_rootTag,
				m_rowTag = m_rowTag,
				m_xslt = m_xslt,
				m_xsltParams = m_xsltParams
			};
		}
	}
}
